/*
 * author zby
 * 首页初始化数据
 */

(function (document, window, $, Utils) {
    'use strict';
    var vm = {},
        pageParams = Utils.getUrlParams(),
        summernote;
    $(function () {
        var fns = {
            addInit: function () {

            },
            editInit: function () {
                Utils.getSimpleJson({
                    url: "/manager/articleCatalog/" + pageParams.id,
                    fn: function (data) {
                        vm.article = data;
                        $('#articleContent').summernote('code', data.content);
                    }
                })
            },
            /**
             * 提交文章内容
             * @param me
             */
            save: function () {
                const parentId = $("#objInfo").find(':selected').val();
                const name = $("#objInfo").find("input[name='name']").val()
                const content = $('#articleContent').summernote('code');
                if (!name || !content) {
                    layer.msg("名称 或 内容不能为空", {time: 800, icon: 2});
                    return;
                }
                $.ajax({
                    url: constant.server_path + "/manager/articleCatalog" + (pageParams.id && pageParams.id != 'undefined' ? ("/" + pageParams.id) : ""),
                    async: true,
                    timeout: 3000,
                    type: pageParams.id && pageParams.id != 'undefined' ? "PUT" : "POST",
                    crossDomain: true,
                    cache: false,
                    xhrFields: {
                        withCredentials: true
                    },
                    dataType: "json",//预期服务器返回的数据类型
                    data: {
                        "parentId": parentId,
                        "content": content,
                        "name": name,
                        "sort": $("#objInfo").find("input[name='sort']").val(),
                    },
                    success: function (data) {
                        if (data.success) {
                            layer.msg(pageParams.id && pageParams.id != 'undefined' ? "编辑成功" : "保存成功", {time: 1000, icon: 1}, function () {
                                history.back(-1);
                            });
                        } else {
                            if (data.errorCtx) {
                                layer.msg(data.errorCtx.errorMsg, {time: 2000, icon: 2});
                            }
                        }
                    },
                    error: function (data) {
                        Utils.failCallback(data)
                    }
                })
            },
        };
        window.fns = fns;
        init();
    });

    //入口方法
    function init() {
        vm = new Vue({
            el: '#objInfo',
            data: {
                article: "",
                articles: "",
                pageType: pageParams.pageType,
            },
        })
        Utils.getSimpleJson({
            url: "/manager/articleCatalog/withoutLevel",
            params: {
                flag: true,
            },
            fn: function (data) {
                vm.articles = data;
            }
        })
        Utils.initSummernote();
        fns[pageParams.pageType + "Init"]();
    }


})(document, window, jQuery, Utils);